]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
shell/network-agent: Fix setting leak in get_secrets_keyring_cb
authorSebastian Keller <skeller@gnome.org>
Mon, 14 Dec 2020 14:51:46 +0000 (15:51 +0100)
committerSebastian Keller <skeller@gnome.org>
Fri, 25 Dec 2020 10:43:13 +0000 (11:43 +0100)
The setting GVariant was not consumed by anything in the VPN case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1535>

src/shell-network-agent.c

index 9524fe5201f527080a43108c9d8f516fa15c34a9..af5dfbb33b03079a3faffea2f44f5d807dc2363f 100644 (file)
@@ -243,7 +243,7 @@ get_secrets_keyring_cb (GObject            *source,
   GList *l;
   gboolean secrets_found = FALSE;
   GVariantBuilder builder_setting, builder_connection;
-  GVariant *setting;
+  g_autoptr (GVariant) setting = NULL;
 
   items = secret_service_search_finish (NULL, result, &secret_error);
 
@@ -303,7 +303,7 @@ get_secrets_keyring_cb (GObject            *source,
     }
 
   g_list_free_full (items, g_object_unref);
-  setting = g_variant_builder_end (&builder_setting);
+  setting = g_variant_ref_sink (g_variant_builder_end (&builder_setting));
 
   /* All VPN requests get sent to the VPN's auth dialog, since it knows better
    * than the agent about what secrets are required.  Otherwise, if no secrets